home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 1 / PC Actual CD 01.iso / share / dos / graficos / plydat14.arj / LIB.H < prev    next >
Encoding:
C/C++ Source or Header  |  1992-03-29  |  1.9 KB  |  42 lines

  1. /*
  2.  * lib.h - vector library definitions
  3.  *
  4.  * Version:  2.2 (11/17/87)
  5.  * Author:  Eric Haines, 3D/Eye, Inc.
  6.  */
  7.  
  8. #define X_AXIS  0
  9. #define Y_AXIS  1
  10. #define Z_AXIS  2
  11.  
  12. /* Output library definitions */
  13. #define OUTPUT_CURVES           0       /* true curve output */
  14. #define OUTPUT_PATCHES          1       /* polygonal patches output */
  15.  
  16. #define OUTPUT_RESOLUTION       4       /* amount of polygonalization */
  17.  
  18. void lib_zero_matrix(MATRIX mx);
  19. void lib_create_identity_matrix(MATRIX mx);
  20. void lib_create_translate_matrix(MATRIX mx, COORD4 *vec);
  21. void lib_create_scale_matrix(MATRIX mx, COORD4 *vec);
  22. void lib_create_rotate_matrix(MATRIX mx, int axis, double angle);
  23. void lib_create_axis_rotate_matrix(MATRIX mx, COORD4 *rvec, double angle);
  24. void lib_create_canonical_matrix(MATRIX trans, COORD4 *origin, COORD4 *up);
  25. void lib_transform_coord(COORD4 *vres, COORD4 *vec, MATRIX mx);
  26. void lib_matrix_multiply(MATRIX mxres, MATRIX mx1, MATRIX mx2);
  27. void lib_rotate_cube_face(COORD4 *vec, int major_axis, int mod_face);
  28. double lib_normalize_coord3(COORD4 *cvec);
  29. double lib_gauss_rand(long iseed);
  30. void lib_output_viewpoint(COORD4 *from, COORD4 *at, COORD4 *up, double angle,
  31.                           double hither, double aspect, int resx, int resy);
  32. void lib_output_light(COORD4 *center_pt);
  33. void lib_output_background_color(COORD4 *color);
  34. void lib_output_bounding_slab(COORD4 *color);
  35. char *lib_output_color(COORD4 *color, double ka, double kd, double ks,
  36.                        double ang, double r, double t, double i_of_r);
  37. void lib_output_cylcone( COORD4 *base_pt, COORD4 *apex_pt, char *texture_name);
  38. void lib_output_sphere(COORD4 *center_pt, char *texture_name);
  39. void lib_output_polygon(int tot_vert, COORD4 *vert, char *texture_name);
  40. void lib_output_polypatch(int tot_vert, COORD4 *vert, COORD4 *norm,
  41.                           char *texture_name);
  42.